package cn.com.shopec.erp.system.service;

import java.util.List;

import cn.com.shopec.erp.base.vo.SupplierVo;
import cn.com.shopec.erp.system.vo.AccessVo;
import cn.com.shopec.erp.system.vo.UserVo;

/**
 * 
 * @ClassName IAccessService
 * @Description 权限Service
 * @author chengui
 * @date 2013-5-30 上午11:00:36
 */
public interface IAccessService {
	
	/**
	 * 
	 * @MethodName addMenu
	 * @Description 新增菜单
	 * @author chengui
	 * @date 2013-5-31 下午3:52:41
	 * @param accessVo
	 * @throws Exception
	 */
	public void addOrModifyMenu(AccessVo accessVo) throws Exception;
	
	/**
	 * 
	 * @MethodName getMenu
	 * @Description 获得同级的权限列表
	 * @author chengui
	 * @date 2013-5-31 下午4:53:41
	 * @param accessVo
	 * @param onceLoad
	 * @param menuType
	 * @return List<AccessVo>
	 * @throws Exception
	 */
	public List<AccessVo> getMenuVos(AccessVo accessVo, boolean onceLoad, int menuType) throws Exception;
	
	/**
	 * 
	 * @MethodName deleteMenuNode
	 * @Description 删除菜单
	 * @author chengui
	 * @date 2013-6-1 下午12:40:39
	 * @param accessVo
	 * @throws Exception
	 */
	public void deleteMenuNode(AccessVo accessVo) throws Exception;
	
	/**
	 * 
	 * @MethodName loadOwnTree
	 * @Description 加载属于自己的菜单树
	 * @author chengui
	 * @date 2013-6-4 下午3:22:06
	 * @param userVo
	 * @return List<AccessVo>
	 * @throws Exception
	 */
	public List<AccessVo> loadOwnTree(UserVo userVo) throws Exception;
	
	/**
	 * 
	 * @MethodName loadOwnTree
	 * @Description 供应商加载属于自己的菜单树
	 * @author chengui
	 * @date 2013-6-9 下午2:56:56
	 * @param suppVo
	 * @return List<AccessVo>
	 * @throws Exception
	 */
	public List<AccessVo> loadOwnTree(SupplierVo suppVo) throws Exception;
	
}
